package com.biostime.qdingding.modules.qd.entity;

import java.util.Date;

import com.biostime.qdingding.common.persistence.DataEntity;

/**
 * 课程交易Entity
 * @author king
 * @version 2015-11-05
 */
public class CourseOrder extends DataEntity<CourseOrder> {
	
	/**
	 * 订单状态
	 * @author phil
	 * @version 2015-11-24
	 */
	public static enum CourseOrderState{
		queuing, //排队
		ordered, //预约
		signed, //签到
		absented, //旷课
		leaved, //请假
		canceled, //取消
		aborted //中止
	}
	
	private static final long serialVersionUID = 1L;	
	private String orderno;// 订单编号
	private Integer type;// 课程类型（户外，普通）
	private Integer courseId;// 预约课程
	private Integer studentId;// 预约学员编号
	private Integer centerId;// 早教中心编号
	private Integer num;// 预约号
	private Double actualPayPrice;// 实付
	private Double freeze;//冻结金额
	private Integer paid;//是否已付清
	private Double price;// 标价
	private String state;// 状态
	private Integer isEight;// 是否连上8节课
	private Integer couponId;//会员优惠券id
	private Integer contractId;//合同编号id
	
	private double money;//返回金额
	private Student student;//学员
	private Member member;//会员(家长)
	private Course course;//预约课程
	private Contract contract;//合同
	

	private Date startOn;//查询用 起始时间 
	private Date endOn;//查询用 结束时间
	
	public CourseOrder(){
		super();
		this.isEight = 0;
	}
	
	public CourseOrder(String id){
		super(id);
	}
	
	public String getOrderno() {
		return orderno;
	}

	public void setOrderno(String orderno) {
		this.orderno = orderno;
	}
	
	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}
	
	public Integer getCourseId() {
		return courseId;
	}

	public void setCourseId(Integer courseId) {
		this.courseId = courseId;
	}
	
	public Integer getStudentId() {
		return studentId;
	}

	public void setStudentId(Integer studentId) {
		this.studentId = studentId;
	}
	
	public Integer getNum() {
		return num;
	}

	public void setNum(Integer num) {
		this.num = num;
	}
	
	public Double getActualPayPrice() {
		return actualPayPrice;
	}

	public void setActualPayPrice(Double actualPayPrice) {
		this.actualPayPrice = actualPayPrice;
	}
	
	public Double getPrice() {
		return price;
	}

	public void setPrice(Double price) {
		this.price = price;
	}

	public String getState() {
		return state;
	}

	public void setState(String state) {
		this.state = state;
	}
	
	public Double getFreeze() {
		return freeze;
	}

	public void setFreeze(Double freeze) {
		this.freeze = freeze;
	}

	public Integer getPaid() {
		return paid;
	}

	public void setPaid(Integer paid) {
		this.paid = paid;
	}

	public Student getStudent() {
		return student;
	}

	public void setStudent(Student student) {
		this.student = student;
	}

	public Member getMember() {
		return member;
	}

	public void setMember(Member member) {
		this.member = member;
	}

	public Integer getCenterId() {
		return centerId;
	}

	public void setCenterId(Integer centerId) {
		this.centerId = centerId;
	}

	public double getMoney() {
		return money;
	}

	public void setMoney(double money) {
		this.money = money;
	}

	public Course getCourse() {
		return course;
	}

	public void setCourse(Course course) {
		this.course = course;
	}

	public Integer getIsEight() {
		return isEight;
	}

	public void setIsEight(Integer isEight) {
		this.isEight = isEight;
	}

	public Integer getCouponId() {
		return couponId;
	}

	public void setCouponId(Integer couponId) {
		this.couponId = couponId;
	}

	public Integer getContractId() {
		return contractId;
	}

	public void setContractId(Integer contractId) {
		this.contractId = contractId;
	}

	public Date getStartOn() {
		return startOn;
	}

	public void setStartOn(Date startOn) {
		this.startOn = startOn;
	}

	public Date getEndOn() {
		return endOn;
	}

	public void setEndOn(Date endOn) {
		this.endOn = endOn;
	}

	public Contract getContract() {
		return contract;
	}

	public void setContract(Contract contract) {
		this.contract = contract;
	}

	
}
